QuickTime 4 API Documentation

3D Graphics Programming with QuickDraw 3D 1.5.4

Previous | QD3D Book | Overview | Chapter Contents | Next |

Gestalt Optional Features Response Masks

When you pass the kQAGestalt_OptionalFeatures selector to the QAEngineGestalt function, QAEngineGestalt returns (through its response parameter) a value that indicates the optional features supported by a drawing engine. You can use these masks to test that value for a specific feature. The bits corresponding to supported features are ORed together to determine the returned value.

A drawing engine may support an optional feature in software only (that is, unaccelerated). You can use the kQAGestalt_FastFeatures selector to determine which, if any, features are accelerated by a drawing engine.

#define kQAOptional_None                            0
#define kQAOptional_DeepZ                           (1 << 0)
#define kQAOptional_Texture                         (1 << 1)
#define kQAOptional_TextureHQ                       (1 << 2)
#define kQAOptional_TextureColor                    (1 << 3)
#define kQAOptional_Blend                           (1 << 4)
#define kQAOptional_BlendAlpha                      (1 << 5)
#define kQAOptional_Antialias                       (1 << 6)
#define kQAOptional_ZSorted                         (1 << 7)
#define kQAOptional_PerspectiveZ                    (1 << 8)
#define kQAOptional_OpenGL                          (1 << 9)
#define kQAOptional_NoClear                         (1 << 10)
#define kQAOptional_CSG                             (1 << 11)
#define kQAOptional_BoundToDevice                   (1 << 12)
#define kQAOptional_CL4                             (1 << 13)
#define kQAOptional_CL8                             (1 << 14)
#define kQAOptional_BufferComposite                 (1 << 15)

Constant descriptions

kQAOptional_None
This value is returned if the drawing engine supports no optional features.
kQAOptional_DeepZ
This bit is set if the drawing engine supports deep z buffering (that is, z buffering with a resolution of greater than or equal to 24 bits per pixel).
kQAOptional_Texture
This bit is set if the drawing engine supports texture mapping.
kQAOptional_TextureHQ
This bit is set if the drawing engine supports high-quality texture mapping (that is, texture mapping using trilinear interpolation or an equivalent algorithm).
kQAOptional_TextureColor
This bit is set if the drawing engine supports full color texture modulation and highlighting.
kQAOptional_Blend
This bit is set if the drawing engine supports transparency blending.
kQAOptional_BlendAlpha
This bit is set if the drawing engine supports transparency blending that uses an alpha channel.
kQAOptional_Antialias
This bit is set if the drawing engine supports antialiasing.
kQAOptional_ZSorted
This bit is set if the drawing engine supports z sorted rendering (for example, for transparency). If this bit is clear, an application must submit transparent objects for rendering in back-to-front z order (or the blending functions will not yield correct results). In general, an application should submit opaque objects first, followed by any transparent objects in back-to-front z order.
kQAOptional_PerspectiveZ
This bit is set if the drawing engine supports perspective-corrected hidden surface removal.
kQAOptional_OpenGL
This bit is set if the drawing engine supports the extended OpenGL feature set.
kQAOptional_NoClear
This bit is set if the drawing engine doesn't clear the buffer before drawing (so that double-buffering might not be required in some applications).
kQAOptional_CSG
This bit is set if the drawing engine supports CSG.
kQAOptional_BoundToDevice
This bit is set if the drawing engine is tightly bound to a specific graphics device.
kQAOptional_CL4
This bit is set if the drawing engine supports the kQAPixel_CL4 pixel type.
kQAOptional_CL8
This bit is set if the drawing engine supports the kQAPixel_CL8 pixel type.
kQAOptional_BufferComposite
This bit is set if the drawing engine supports buffer compositing.

© 1997 Apple Computer, Inc.

Previous | QD3D Book | Overview | Chapter Contents | Next |